//
//  AppUtils.h
//  SHDoctor
//
//  Created by Mac mini on 15/10/21.
//  Copyright © 2015年 ShiHeng. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface AppUtils : NSObject

/**
 *  根据字符串内容的多少  在固定宽度 下计算出实际的行高
 *
 *  @param text      需要计算的内容
 *  @param textWidth 设定的显示宽度
 *  @param size      字体的大小
 *
 *  @return 高度
 */
+ (CGFloat)textHeightFromTextString:(NSString *)text width:(CGFloat)textWidth fontSize:(CGFloat)size;

/**
 *  根据字符串内容的多少  在固定高度 下计算出实际的行宽
 *
 *  @param text       需要计算的内容
 *  @param textHeight 设定的显示高度
 *  @param size       字体的大小
 *
 *  @return 宽度
 */
+ (CGFloat)textWidthFromTextString:(NSString *)text height:(CGFloat)textHeight fontSize:(CGFloat)size;

/**
 *  根据指定格式将NSDate转换为NSString
 *
 *  @param date      时间 NSDate
 *  @param formatter 时间格式
 *
 *  @return 时间String
 */
+ (NSString *)stringFromDate:(NSDate *)date formatter:(NSString *)formatter;

/**
 *  根据指定格式将NSDate转换为NSString
 *
 *  @param timeInterval      时间戳
 *  @param formatter 时间格式
 *
 *  @return 时间String
 */
+ (NSString *)stringFromDateTime:(NSTimeInterval)timeInterval formatter:(NSString *)formatter;

/**
 *  根据指定格式将NSString转换为NSDate
 *
 *  @param dateString 时间String
 *  @param formatter  时间格式
 *
 *  @return 时间 NSDate
 */
+ (NSDate *)dateFromString:(NSString *)dateString formatter:(NSString *)formatter;

/**
 *  把时间转化成对应的类型
 *
 *  @param dateString    时间String
 *  @param fromFormatter 时间格式
 *  @param toFormatter   转换为的时间格式
 *
 *  @return 时间String
 */
+ (NSString *)stringFromDateString:(NSString*)dateString fromFormatter:(NSString*)fromFormatter toFormatter:(NSString*)toFormatter;

/**
 *  根据生日计算年龄
 *
 *  @param birthDay 生日
 *
 *  @return 年龄
 */
+ (NSInteger)ageFromBirthDay:(NSString*)birthDay;

/**
 *  获取项目版本
 *
 *  @return 版本号
 */
+ (NSString*)getProjectVersion;

@end